home *** CD-ROM | disk | FTP | other *** search
- 10 ' CHECKBOOK VERSION 2.0
- 20 ' BY BILL HOWE (COMPU-SERVE # 70215,107)
- 30 '
- 40 '
- 50 '
- 60 title$=" CHECKBOOK "
- 70 title$=chr$(32)+chr$(14)+chr$(15)+title$
- 80 title$=title$+chr$(14)+chr$(15)+chr$(32)
- 90 gosub 100:goto 210
- 100 poke systab+24,1
- 110 a#=gb
- 120 gintin=peek(a#+8)
- 130 poke gintin+0,peek(systab+8)
- 140 poke gintin+2,2
- 150 s#=gintin+4
- 160 title$=title$+chr$(0)
- 170 poke s#,varptr(title$)
- 180 gemsys(105)
- 190 poke systab+24,0
- 200 return
- 210 FULLW 2:CLEARW 2
- 220 CLEAR
- 230 MESSAGE$ = "REMOVE THE PROGRAM DISK AND INSERT DATA DISK":GOSUB DISPLAY.MESSAGE
- 240 MESSAGE$ = "WHEN READY PRESS [RETURN/ENTER] KEY TO CONTINUE":GOSUB DISPLAY.MESSAGE.WAIT
- 250 GOTOXY 8,8
- 260 LINE INPUT "ENTER TODAY'S DATE: MM/DD/YY ";SYSDATE$
- 270 DATE$ = SYSDATE$
- 280 REPDATE$ = SYSDATE$
- 290 GOSUB CHECK.DATE
- 300 IF DATE$ = "BAD" THEN GOSUB CLS.SCREEN:GOTO 250
- 310 OPEN "R",1,"CHECK.DAT",112
- 320 FIELD #1, 8 AS CDATE$,4 AS CDEPOSIT$,4 AS CNUMBER$,35 AS CTO$,35 AS CFOR$,4 AS CAMOUNT$,4 AS CBALANCE$,17 AS COUTSTANDING$,1 AS CCODE$
- 330 TRANS = LOF(1)
- 340 IF TRANS > 0 THEN GOSUB READ.SYSTEM.RECORD
- 350 '
- 360 '
- 370 MASTER.MENU:
- 380 '
- 390 '
- 400 CLEARW 2:Z = 0
- 410 GOTOXY 0,10: PRINT STRING$(72,"*")
- 420 GOTOXY 0,11: PRINT "( 1 ) ENTER TRANSACTION ( 2 )"
- 430 GOTOXY 37,11:PRINT " DISPLAY TRANSACTION"
- 440 GOTOXY 0,12:PRINT "( 3 ) DELETE TRANSACTION ( 4 )"
- 450 GOTOXY 37,12:PRINT " BALANCE TO STATEMENT"
- 460 GOTOXY 0,13:PRINT "( 5 ) PRINT CHECKS ( 6 )"
- 470 GOTOXY 37,13:PRINT " PRINT TRANSACTION REPORT"
- 480 GOTOXY 0,14:PRINT "( 7 ) INITALIZE DISK ( 8 )"
- 490 GOTOXY 37,14:PRINT " END PROGRAM"
- 500 '
- 510 '
- 520 ENTER.CHOICE:
- 530 '
- 540 '
- 550 IF TRANS = 0 THEN MESSAGE$ = "NO DATA FILE FOUND":GOSUB DISPLAY.MESSAGE:GOSUB INITIALIZE.THE.DISK
- 560 GOTOXY 0,16
- 570 PRINT STRING$(72," ");
- 580 GOTOXY 0,16
- 590 CHOICE = 0
- 600 CHOICE$ = ""
- 610 LINE INPUT "? ";CHOICE$
- 620 CHOICE = VAL(CHOICE$)
- 630 IF CHOICE = 8 THEN CLEARW 2:CLOSE
- 640 IF CHOICE = 8 THEN MESSAGE$ = "REMOVE DATA DISK AND INSERT PROGRAM DISK":GOSUB DISPLAY.MESSAGE
- 650 IF CHOICE = 8 THEN MESSAGE$ = "WHEN READY PRESS [RETURN/ENTER] KEY TO CONTINUE":GOSUB DISPLAY.MESSAGE.WAIT
- 660 IF CHOICE = 8 THEN END
- 670 IF CHOICE = 1 GOTO ENTER.TRANS
- 680 IF CHOICE = 2 GOTO DISPLAY.TRANSACTION
- 690 IF CHOICE = 3 GOTO DELETE.TRANS
- 700 IF CHOICE = 4 THEN GOTO BALANCE.TO.STATEMENT
- 710 IF CHOICE = 5 THEN GOTO PRNT.CHECKS
- 720 IF CHOICE = 6 THEN GOTO PRNT.REPORT
- 730 IF CHOICE = 7 THEN GOSUB INITIALIZE.THE.DISK
- 740 IF CHOICE$ = "," OR CHOICE$ = "<" THEN GOTO DISPLAY.TRANS.TWO
- 750 IF CHOICE$ = "." OR CHOICE$ = ">" THEN GOTO DISPLAY.TRANS.TWO
- 760 IF CHOICE$ = "X" THEN GOTO MASTER.MENU
- 770 GOTO ENTER.CHOICE
- 780 '
- 790 '
- 800 ENTER.TRANS:
- 810 '
- 820 '
- 830 GOSUB CLEAR.FIELDS
- 840 GOSUB BUILD.SCREEN
- 850 GOSUB READ.SYSTEM.RECORD
- 860 COLOR 2,0,1
- 870 GOTOXY 20,0
- 880 IF CHECK.NUMBER > 1 THEN PRINT USING "NEXT CHECK NUMBER TO USE -> ####";CHECK.NUMBER + 1
- 890 COLOR 1,0,1
- 900 Z = TRANS.NUMBER
- 910 TRANS.NUMBER = TRANS.NUMBER + 1
- 920 IF TRANS.NUMBER = 1 THEN TRANS.NUMBER = 2
- 930 GOTOXY 44,9:PRINT USING "Record number -> ####";TRANS.NUMBER
- 940 GOSUB CLEAR.FIELDS
- 950 GOTOXY 0,9
- 960 IF BALANCE < 0 THEN COLOR 2,0,1 ELSE COLOR 1,0,1
- 970 PRINT USING "Your current balance is - > $ #,###.##";BALANCE
- 980 COLOR 1,0,1
- 990 GOTOXY 30,1
- 1000 LINE INPUT DATE$
- 1010 IF LEN(DATE$) = 0 THEN DATE$ = SYSDATE$
- 1020 SYSDATE$ = DATE$
- 1030 GOSUB CHECK.DATE
- 1040 GOTOXY 29,1:PRINT STRING$(15," ")
- 1050 IF DATE$ = "BAD" GOTO 990
- 1060 GOTOXY 33,1:PRINT DATE$
- 1070 GOTOXY 30,2:LINE INPUT ANSWER$:IF LEN(ANSWER$) > 0 THEN DEPOSIT = VAL(ANSWER$)
- 1080 GOTOXY 30,3:LINE INPUT ANSWER$:IF LEN(ANSWER$) > 0 THEN NUMBER = VAL(ANSWER$)
- 1090 IF CHECK.NUMBER < 2 THEN GOTO 1110
- 1100 IF DEPOSIT = 0 AND NUMBER = 0 THEN NUMBER = CHECK.NUMBER + 1:GOTOXY 31,3:PRINT USING "####";NUMBER
- 1110 IF NUMBER < 1 THEN NUMBER = TRANS.NUMBER:GOTOXY 31,3:PRINT USING "####";NUMBER
- 1120 IF NUMBER = 1 THEN MESSAGE$ = "BY DOING THIS, YOU ARE RE-SETTING YOUR BALANCE":GOSUB DISPLAY.MESSAGE
- 1130 IF NUMBER = 1 THEN BALANCE = DEPOSIT:GOTO 1280
- 1140 IF DEPOSIT > 0 THEN GOTO 1150 ELSE GOTOXY 30,4:LINE INPUT TO$
- 1150 GOTOXY 30,5:LINE INPUT FOR$:IF DEPOSIT > 0 THEN GOTO 1170
- 1160 GOTOXY 30,6:LINE INPUT ANSWER$:IF LEN(ANSWER$) > 0 THEN AMOUNT = VAL(ANSWER$)
- 1170 BALANCE = DEPOSIT + BALANCE - AMOUNT
- 1180 IF BALANCE < 0 THEN COLOR 2,0,1 ELSE COLOR 1,0,1
- 1190 GOTOXY 30,7:PRINT USING "#,###.##";BALANCE
- 1200 GOTOXY 0,9
- 1210 PRINT USING "Your current balance is - > $ #,###.##";BALANCE
- 1220 GOTOXY 0,0:PRINT STRING$(72," ")
- 1230 COLOR 1,0,1
- 1240 GOSUB TAG.OUTSTANDING
- 1250 GOSUB LSET.THE.FIELDS
- 1260 PUT #1,TRANS.NUMBER
- 1270 IF NUMBER > TRANS.NUMBER THEN CHECK.NUMBER = NUMBER
- 1280 GOSUB CLEAR.FIELDS
- 1290 GOSUB WRITE.SYSTEM.RECORD
- 1300 GOTO ENTER.CHOICE
- 1310 '
- 1320 '
- 1330 WRITE.SYSTEM.RECORD:
- 1340 '
- 1350 '
- 1360 DATE$ = "XX/XX/XX"
- 1370 TO$ = " ** SYSTEM"
- 1380 FOR$ = " RECORD **"
- 1390 CODE$ = "I"
- 1400 DEPOSIT = TRANS.NUMBER
- 1410 AMOUNT = CHECK.NUMBER
- 1420 GOSUB LSET.THE.FIELDS
- 1430 PUT #1,1
- 1440 RETURN
- 1450 '
- 1460 '
- 1470 CLS.SCREEN:
- 1480 '
- 1490 '
- 1500 GOTOXY 0,0:PRINT STRING$(72," ")
- 1510 GOTOXY 0,1:PRINT STRING$(72," ")
- 1520 GOTOXY 0,2:PRINT STRING$(72," ")
- 1530 GOTOXY 0,3:PRINT STRING$(72," ")
- 1540 GOTOXY 0,4:PRINT STRING$(72," ")
- 1550 GOTOXY 0,5:PRINT STRING$(72," ")
- 1560 GOTOXY 0,6:PRINT STRING$(72," ")
- 1570 GOTOXY 0,7:PRINT STRING$(72," ")
- 1580 GOTOXY 0,8:PRINT STRING$(72," ")
- 1590 GOTOXY 0,9:PRINT STRING$(72," ")
- 1600 RETURN
- 1610 '
- 1620 '
- 1630 TAG.OUTSTANDING:
- 1640 '
- 1650 '
- 1660 OUTSTANDING$ = "** OUTSTANDING **":GOTOXY 44,1:PRINT OUTSTANDING$
- 1670 CODE$ = "O"
- 1680 RETURN
- 1690 '
- 1700 '
- 1710 BUILD.SCREEN:
- 1720 '
- 1730 '
- 1740 GOTOXY 0,1:PRINT "Transaction date:..............";:PRINT STRING$(40," ")
- 1750 GOTOXY 0,2:PRINT "Deposit:.......................";:PRINT STRING$(40," ")
- 1760 GOTOXY 0,3:PRINT "Transaction number:............";:PRINT STRING$(40," ")
- 1770 GOTOXY 0,4:PRINT "Check made out to:.............";:PRINT STRING$(40," ")
- 1780 GOTOXY 0,5:PRINT "For:...........................";:PRINT STRING$(40," ")
- 1790 GOTOXY 0,6:PRINT "Amount of check:..............$";:PRINT STRING$(40," ")
- 1800 GOTOXY 0,7:PRINT "Balance on this transaction:..$";:PRINT STRING$(40," ")
- 1810 RETURN
- 1820 '
- 1830 '
- 1840 LSET.THE.FIELDS:
- 1850 '
- 1860 '
- 1870 LSET CDATE$ = DATE$
- 1880 LSET CDEPOSIT$ = MKS$(DEPOSIT)
- 1890 LSET CNUMBER$ = MKS$(NUMBER)
- 1900 LSET CTO$ = TO$
- 1910 LSET CFOR$ = FOR$
- 1920 LSET CAMOUNT$ = MKS$(AMOUNT)
- 1930 LSET CBALANCE$ = MKS$(BALANCE)
- 1940 LSET COUTSTANDING$ = OUTSTANDING$
- 1950 LSET CCODE$ = CODE$
- 1960 RETURN
- 1970 '
- 1980 '
- 1990 READ.THE.FILE:
- 2000 '
- 2010 '
- 2020 GET 1, TRANSNUMBER
- 2030 DATE$ = CDATE$
- 2040 DEPOSIT = CVS(CDEPOSIT$)
- 2050 NUMBER = CVS(CNUMBER$)
- 2060 TO$ = CTO$
- 2070 FOR$ = CFOR$
- 2080 AMOUNT = CVS(CAMOUNT$)
- 2090 BALANCE = CVS(CBALANCE$)
- 2100 OUTSTANDING$ = COUTSTANDING$
- 2110 CODE$ = CCODE$
- 2120 RETURN
- 2130 '
- 2140 '
- 2150 READ.SYSTEM.RECORD:
- 2160 '
- 2170 '
- 2180 TRANSNUMBER = 1
- 2190 GOSUB READ.THE.FILE
- 2200 CHECK.NUMBER = AMOUNT
- 2210 TRANS.NUMBER = DEPOSIT
- 2220 RETURN
- 2230 '
- 2240 '
- 2250 CLEAR.FIELDS:
- 2260 '
- 2270 '
- 2280 DATE$ = "":DEPOSIT = 0:NUMBER = 0:TO$ = "":FOR$ = "":AMOUNT = 0
- 2290 OUTSTANDING$ = ""
- 2300 ANSWER$ = ""
- 2310 DATE$ = ""
- 2320 CODE$ = ""
- 2330 RETURN
- 2340 '
- 2350 '
- 2360 INITIALIZE.THE.DISK:
- 2370 '
- 2380 '
- 2390 GOSUB CLS.SCREEN
- 2400 MESSAGE$ = "REMOVE PROGRAM DISK AND INSERT A BLANK FORMATTED DISK":GOSUB DISPLAY.MESSAGE
- 2410 GOTOXY 10,16
- 2420 COLOR 2,0,1
- 2430 LINE INPUT "ARE YOU SURE YOU WANT TO INITIALIZE THE FILE Y/N ";ANSWER$
- 2440 IF LEFT$(ANSWER$,1) = "Y" THEN 2470
- 2450 COLOR 1,0,1
- 2460 GOTO ENTER.CHOICE
- 2470 GOSUB CLS.SCREEN
- 2480 COLOR 1,0,1
- 2490 FOR Y = 1 TO 1000
- 2500 GOSUB CLEAR.FIELDS
- 2510 BALANCE = 0
- 2520 CODE$ = "E"
- 2530 GOSUB LSET.THE.FIELDS
- 2540 PUT 1,Y
- 2550 GOTOXY 0,0
- 2560 PRINT USING "INITIALIZING RECORD NUMBER - > ####";Y
- 2570 NEXT Y
- 2580 GOSUB CLS.SCREEN
- 2590 TRANS = LOF(1)
- 2600 GOSUB READ.SYSTEM.RECORD
- 2610 MESSAGE$ = "WHEN READY PRESS [RETURN/ENTER] KEY TO CONTINUE":GOSUB DISPLAY.MESSAGE.WAIT
- 2620 MESSAGE$ = "TO SET YOUR BALANCE USE NUMBER -> ( 1 ) ENTER TRANSACTION":GOSUB DISPLAY.MESSAGE
- 2630 MESSAGE$ = "THEN USE NUMBER '1' FOR TRANSACTION NUMBER":GOSUB DISPLAY.MESSAGE
- 2640 RETURN
- 2650 '
- 2660 '
- 2670 DISPLAY.TRANSACTION:
- 2680 '
- 2690 '
- 2700 GOSUB CLEAR.FIELDS
- 2710 GOSUB BUILD.SCREEN
- 2720 TRANSNUMBER = 0:ANSWER$ = ""
- 2730 GOTOXY 30,3:LINE INPUT ANSWER$:IF LEN(ANSWER$) > 0 THEN TRANSNUMBER = VAL(ANSWER$)
- 2740 IF CHOICE = 3 AND TRANSNUMBER = 0 THEN GOTO ENTER.CHOICE
- 2750 IF TRANSNUMBER = 1 THEN GOTO DISPLAY.SYSTEM.RECORD
- 2760 IF TRANSNUMBER = 0 THEN GOTOXY 30,4:LINE INPUT TO$
- 2770 IF TRANSNUMBER = 0 AND LEN(TO$) = 0 THEN GOTOXY 30,5:LINE INPUT FOR$
- 2780 IF TRANSNUMBER = 0 AND LEN(TO$) = 0 AND LEN(FOR$) = 0 THEN GOTO ENTER.CHOICE ELSE GOSUB SEARCH.FOR.TRANS
- 2790 IF CHOICE = 2 AND CODE$ = "E" THEN MESSAGE$ = "** NOT FOUND **":GOSUB DISPLAY.MESSAGE:GOTO DISPLAY.TRANSACTION
- 2800 IF CHOICE = 3 AND CODE$ = "E" THEN MESSAGE$ = "** NOT FOUND **":GOSUB DISPLAY.MESSAGE:GOTO ENTER.CHOICE
- 2810 '
- 2820 '
- 2830 DISPLAY.TRANS:
- 2840 '
- 2850 '
- 2860 IF NUMBER = 1 THEN GOTO DISPLAY.SYSTEM.RECORD
- 2870 GOTOXY 0,9
- 2880 PRINT STRING$(72," ");
- 2890 GOTOXY 30,1:PRINT DATE$
- 2900 GOTOXY 30,2:PRINT USING "#,###.##";DEPOSIT
- 2910 GOTOXY 30,3:PRINT STRING$(10," ")
- 2920 GOTOXY 30,3:PRINT USING "####";NUMBER
- 2930 GOTOXY 30,4:PRINT TO$
- 2940 GOTOXY 30,5:PRINT FOR$
- 2950 GOTOXY 30,6:PRINT USING "#,###.##";AMOUNT
- 2960 IF BALANCE < 0 THEN COLOR 2,0,1 ELSE COLOR 1,0,1
- 2970 GOTOXY 30,7:PRINT USING "#,###.##";BALANCE
- 2980 COLOR 1,0,1
- 2990 GOTOXY 44,1:PRINT OUTSTANDING$
- 3000 IF CHOICE = 3 THEN RETURN
- 3010 IF CHOICE = 4 THEN RETURN
- 3020 IF CHOICE = 5 THEN RETURN
- 3030 IF CHOICE = 6 THEN RETURN
- 3040 IF CHOICE$ = "," OR CHOICE$ = "<" THEN GOTO ENTER.CHOICE
- 3050 IF CHOICE$ = "." OR CHOICE$ = ">" THEN GOTO ENTER.CHOICE
- 3060 IF C OR D > 0 THEN GOTOXY 0,16:LINE INPUT "CONTINUE SEARCHING Y/N ";ANSWER$:IF LEFT$(ANSWER$,1) = "Y" THEN RETURN ELSE GOTO ENTER.CHOICE
- 3070 GOTO ENTER.CHOICE
- 3080 '
- 3090 '
- 3100 DELETE.TRANS:
- 3110 '
- 3120 '
- 3130 GOSUB DISPLAY.TRANSACTION
- 3140 GOTOXY 0,16
- 3150 LINE INPUT "O.K. TO DELETE Y/N ";ANSWER$
- 3160 IF LEFT$(ANSWER$,1) = "N" THEN GOTO ENTER.CHOICE
- 3170 IF LEFT$(ANSWER$,1) <> "Y" THEN GOTO 3140
- 3180 NUM.HOLD = NUMBER
- 3190 DEP.HOLD = DEPOSIT
- 3200 AMT.HOLD = AMOUNT
- 3210 GOSUB READ.SYSTEM.RECORD
- 3220 BALANCE = (BALANCE - DEP.HOLD) + AMT.HOLD
- 3230 GOSUB WRITE.SYSTEM.RECORD
- 3240 GOSUB CLEAR.FIELDS
- 3250 CODE$ = "D":BALANCE = 0
- 3260 GOSUB LSET.THE.FIELDS
- 3270 PUT 1,NUM.HOLD
- 3280 DEP.HOLD = 0:AMT.HOLD = 0
- 3290 MESSAGE$ = "--> D E L E T E D <--"
- 3300 GOSUB DISPLAY.MESSAGE
- 3310 GOTO ENTER.CHOICE
- 3320 '
- 3330 '
- 3340 BALANCE.TO.STATEMENT:
- 3350 '
- 3360 '
- 3370 GOTOXY 0,16
- 3380 STATEMENT = 0:C.DEPOSIT = 0:Y.DEPOSIT = 0:C.AMOUNT = 0:Y.AMOUNT = 0
- 3390 SUB.TOTAL = 0:NEW.TOTAL = 0:BAD.AMOUNT = 0
- 3400 STATEMENT$ = "":H.BALANCE = 0
- 3410 LINE INPUT "ENTER STATEMENT BALANCE - > $ ";STATEMENT$
- 3420 STATEMENT = VAL(STATEMENT$)
- 3430 GOSUB READ.SYSTEM.RECORD
- 3440 H.BALANCE = BALANCE
- 3450 FOR X = 2 TO TRANS.NUMBER
- 3460 GOSUB CLEAR.FIELDS
- 3470 TRANSNUMBER = X
- 3480 GOSUB READ.THE.FILE
- 3490 IF CODE$ = "O" OR CODE$ = "C" OR CODE$ = "P" THEN GOSUB BUILD.SCREEN
- 3500 IF CODE$ = "O" OR CODE$ = "C" OR CODE$ = "P" THEN GOSUB DISPLAY.TRANS
- 3510 ANSWER$ = ""
- 3520 COLOR 2,0,1
- 3530 IF CODE$ = "O" OR CODE$ = "C" OR CODE$ = "P" THEN GOTOXY 40,16:LINE INPUT "C L E A R E D Y/N ";ANSWER$
- 3540 COLOR 1,0,1
- 3550 IF LEFT$(ANSWER$,1) = "Y" THEN C.DEPOSIT = (C.DEPOSIT + DEPOSIT)
- 3560 IF LEFT$(ANSWER$,1) = "N" THEN Y.DEPOSIT = (Y.DEPOSIT + DEPOSIT)
- 3570 IF LEFT$(ANSWER$,1) = "Y" THEN C.AMOUNT = (C.AMOUNT + AMOUNT)
- 3580 IF LEFT$(ANSWER$,1) = "N" THEN Y.AMOUNT = (Y.AMOUNT + AMOUNT)
- 3590 IF LEFT$(ANSWER$,1) = "Y" THEN CODE$ = "C"
- 3600 IF LEFT$(ANSWER$,1) = "Y" THEN OUTSTANDING$ = "* C L E A R E D *"
- 3610 IF LEFT$(ANSWER$,1) = "Y" THEN GOSUB LSET.THE.FIELDS:PUT 1,TRANSNUMBER
- 3620 IF LEFT$(ANSWER$,1) = "N" AND CODE$ = "P" THEN OUTSTANDING$ = "** OUTSTANDING **":GOSUB LSET.THE.FIELDS:PUT 1, TRANSNUMBER:GOTO 3640
- 3630 IF LEFT$(ANSWER$,1) = "N" THEN CODE$ = "O":OUTSTANDING$ = "** OUTSTANDING **":GOSUB LSET.THE.FIELDS:PUT 1, TRANSNUMBER
- 3640 NEXT X
- 3650 SUB.TOTAL = STATEMENT + Y.DEPOSIT
- 3660 NEW.TOTAL = SUB.TOTAL - Y.AMOUNT
- 3670 IF NEW.TOTAL = H.BALANCE THEN GOTO 3790 ELSE BAD.AMOUNT = NEW.TOTAL - H.BALANCE
- 3680 IF FIX(NEW.TOTAL) = FIX(H.BALANCE) THEN GOTO 3790
- 3690 GOSUB CLS.SCREEN
- 3700 GOTOXY 0,10
- 3710 MESSAGE$ = "SORRY, YOU DO NOT BALANCE TO YOUR STATEMENT"
- 3720 GOSUB DISPLAY.MESSAGE
- 3730 GOTOXY 10,16
- 3740 COLOR 2,0,1
- 3750 PRINT USING "YOU ARE OFF BY $ #,###.##";BAD.AMOUNT
- 3760 COLOR 1,0,1
- 3770 FOR X = 1 TO 2500:NEXT X
- 3780 GOTO ENTER.CHOICE
- 3790 GOSUB CLS.SCREEN
- 3800 GOTOXY 0,5
- 3810 MESSAGE$ = "CONGRADULATIONS ! YOU ARE IN BALANCE !"
- 3820 GOSUB DISPLAY.MESSAGE
- 3830 MESSAGE$ = "STANDBY - DOING SOME FILE MAINTENNANCE"
- 3840 GOSUB DISPLAY.MESSAGE
- 3850 FOR X = 2 TO TRANS.NUMBER
- 3860 GOSUB CLEAR.FIELDS
- 3870 TRANSNUMBER = X
- 3880 GOSUB READ.THE.FILE
- 3890 IF CODE$ = "C" THEN CODE$ = "X"
- 3900 GOSUB LSET.THE.FIELDS
- 3910 PUT 1,TRANSNUMBER
- 3920 NEXT X
- 3930 GOTO ENTER.CHOICE
- 3940 '
- 3950 '
- 3960 DISPLAY.MESSAGE:
- 3970 '
- 3980 '
- 3990 GOTOXY 0,16
- 4000 PRINT STRING$(72," ");
- 4010 LENGTH = LEN(MESSAGE$) / 2
- 4020 GOTOXY 35 - LENGTH,16
- 4030 COLOR 2,0,1
- 4040 PRINT MESSAGE$
- 4050 COLOR 1,0,1
- 4060 FOR X = 1 TO 2500:NEXT X
- 4070 GOTOXY 0,16
- 4080 PRINT STRING$(72," ");
- 4090 MESSAGE$ = " "
- 4100 RETURN
- 4110 '
- 4120 '
- 4130 CHECK.DATE:
- 4140 '
- 4150 '
- 4160 IF LEN(DATE$) = 0 THEN DATE$ = "BAD"
- 4170 IF LEN(DATE$) > 8 THEN DATE$ = "BAD"
- 4180 IF LEN(DATE$) < 8 THEN DATE$ = "BAD"
- 4190 MM$ = LEFT$(DATE$,2)
- 4200 MM = VAL(MM$)
- 4210 DD$ = MID$(DATE$,4,2)
- 4220 DD = VAL(DD$)
- 4230 YY$ = RIGHT$(DATE$,2)
- 4240 YY = VAL(YY$)
- 4250 IF MM < 0 THEN DATE$ = "BAD"
- 4260 IF MM > 12 THEN DATE$ = "BAD"
- 4270 IF DD < 0 THEN DATE$ = "BAD"
- 4280 IF DD > 31 THEN DATE$ = "BAD"
- 4290 IF YY < 85 THEN DATE$ = "BAD"
- 4300 IF YY > 95 THEN DATE$ = "BAD"
- 4310 IF DATE$ = "BAD" THEN MESSAGE$ = "I N V A L I D D A T E":GOSUB DISPLAY.MESSAGE
- 4320 RETURN
- 4330 '
- 4340 '
- 4350 SEARCH.FOR.TRANS:
- 4360 '
- 4370 '
- 4380 A = 0:B = 0:C = 0:D = 0
- 4390 SEARCH.NUMBER = TRANSNUMBER
- 4400 A = LEN(TO$):B = LEN(FOR$)
- 4410 IF A > 0 THEN SEARCH$ = TO$ ELSE SEARCH$ = FOR$
- 4420 FOR X = 2 TO TRANS.NUMBER
- 4430 GOSUB CLEAR.FIELDS
- 4440 TRANSNUMBER = X
- 4450 GOSUB READ.THE.FILE
- 4460 Z = X
- 4470 IF SEARCH.NUMBER = 0 THEN GOTO 4490
- 4480 IF SEARCH.NUMBER = NUMBER THEN GOSUB DISPLAY.TRANS:RETURN
- 4490 C = INSTR(TO$,SEARCH$)
- 4500 D = INSTR(FOR$,SEARCH$)
- 4510 IF C OR D > 0 THEN GOSUB DISPLAY.TRANS
- 4520 NEXT X
- 4530 IF C OR D = 0 THEN MESSAGE$ = "** NOT FOUND **":GOSUB DISPLAY.MESSAGE
- 4540 GOTO ENTER.CHOICE
- 4550 '
- 4560 '
- 4570 DISPLAY.SYSTEM.RECORD:
- 4580 '
- 4590 '
- 4600 GOSUB READ.SYSTEM.RECORD
- 4610 GOSUB BUILD.SYSTEM.SCREEN
- 4620 GOTOXY 0,9
- 4630 PRINT STRING$(72," ");
- 4640 GOTOXY 31,1:PRINT DATE$
- 4650 GOTOXY 31,2:PRINT USING "####";DEPOSIT
- 4660 GOTOXY 30,3:PRINT STRING$(10," ")
- 4670 GOTOXY 31,3:PRINT USING "####";TRANSNUMBER
- 4680 GOTOXY 31,4:PRINT TO$
- 4690 GOTOXY 31,5:PRINT FOR$
- 4700 GOTOXY 31,6:PRINT USING "####";AMOUNT
- 4710 GOTOXY 31,7:PRINT USING "#,###.##";BALANCE
- 4720 GOTOXY 44,1:PRINT OUTSTANDING$
- 4730 GOTO ENTER.CHOICE
- 4740 '
- 4750 '
- 4760 BUILD.SYSTEM.SCREEN:
- 4770 '
- 4780 '
- 4790 GOTOXY 0,1:PRINT "...............................";:PRINT STRING$(40," ")
- 4800 GOTOXY 0,2:PRINT "Current transaction number:....";:PRINT STRING$(40," ")
- 4810 GOTOXY 0,3:PRINT "...............................";:PRINT STRING$(40," ")
- 4820 GOTOXY 0,4:PRINT "...............................";:PRINT STRING$(40," ")
- 4830 GOTOXY 0,5:PRINT "...............................";:PRINT STRING$(40," ")
- 4840 GOTOXY 0,6:PRINT "Current check number:.........$";:PRINT STRING$(40," ")
- 4850 GOTOXY 0,7:PRINT "Current balance:..............$";:PRINT STRING$(40," ")
- 4860 RETURN
- 4870 '
- 4880 '
- 4890 DISPLAY.TRANS.TWO:
- 4900 '
- 4910 '
- 4920 IF CHOICE$ = "," OR CHOICE$ = "<" THEN Z = Z - 1
- 4930 IF CHOICE$ = "." OR CHOICE$ = ">" THEN Z = Z + 1
- 4940 IF Z <= 0 THEN GOTO ENTER.CHOICE
- 4950 IF Z > LOF(1) THEN GOTO ENTER.CHOICE
- 4960 GOSUB CLEAR.FIELDS
- 4970 IF Z = 1 THEN Z = 2
- 4980 TRANSNUMBER = Z
- 4990 GOSUB READ.THE.FILE
- 5000 IF CODE$ = "D" THEN GOTO DISPLAY.TRANS.TWO
- 5010 IF CODE$ = "E" THEN GOTO ENTER.CHOICE
- 5020 GOSUB BUILD.SCREEN
- 5030 GOTO DISPLAY.TRANS
- 5040 '
- 5050 '
- 5060 DISPLAY.MESSAGE.WAIT:
- 5070 '
- 5080 '
- 5090 GOTOXY 0,16
- 5100 MESSAGE$ = MESSAGE$ + " "
- 5110 PRINT STRING$(72," ");
- 5120 LENGTH = LEN(MESSAGE$) / 2
- 5130 GOTOXY 35 - LENGTH,16
- 5140 COLOR 2,0,1
- 5150 PRINT MESSAGE$;
- 5160 COLOR 1,0,1
- 5170 LINE INPUT NOTHING$
- 5180 MESSAGE$ = " "
- 5190 GOTOXY 0,16
- 5200 PRINT STRING$(72," ");
- 5210 RETURN
- 5220 '
- 5230 '
- 5240 PRNT.CHECKS:
- 5250 '
- 5260 '
- 5270 ANSWER$ = "":STARTING.NUMBER = 0:ABC = 0:ABC$ = ""
- 5280 GOTOXY 0,16
- 5290 LINE INPUT "ARE YOU SURE YOU WANT TO DO A CHECK RUN ? ";ANSWER$
- 5300 IF LEFT$(ANSWER$,1) <> "Y" THEN GOTO ENTER.CHOICE
- 5310 ANSWER$ = ""
- 5320 GOTOXY 0,16
- 5330 PRINT STRING$(72," ");
- 5340 GOTOXY 0,16
- 5350 LINE INPUT "DO YOU NEED AN ALIGNMENT PRINT ? ";ANSWER$
- 5360 IF LEFT$(ANSWER$,1) = "Y" THEN GOSUB ALIGN:GOTO 5320
- 5370 GOTOXY 0,16
- 5380 PRINT STRING$(72," ");
- 5390 IF LEFT$(ANSWER$,1) = "X" THEN GOTO ENTER.CHOICE
- 5400 ANSWER$ = ""
- 5410 GOTOXY 0,16
- 5420 LINE INPUT "ENTER STARTING CHECK NUMBER ? ";ANSWER$
- 5430 IF ANSWER$ = "" THEN GOTO ENTER.CHOICE
- 5440 STARTING.NUMBER = VAL(ANSWER$)
- 5450 IF STARTING.NUMBER = 0 THEN GOTO ENTER.CHOICE
- 5460 GOSUB READ.SYSTEM.RECORD
- 5470 GOSUB BUILD.SCREEN
- 5480 FOR X = 2 TO TRANS.NUMBER
- 5490 GOSUB CLEAR.FIELDS
- 5500 TRANSNUMBER = X
- 5510 GOSUB READ.THE.FILE
- 5520 IF CODE$ = "E" OR CODE$ = "C" OR CODE$ = "X" THEN GOTO 6890
- 5530 IF AMOUNT = 0 GOTO 6890
- 5540 IF AMOUNT > 999.99 THEN GOTO 6890
- 5550 IF NUMBER < STARTING.NUMBER THEN 6890
- 5560 GOSUB DISPLAY.TRANS
- 5570 IF CODE$ = "P" THEN GOTO 5580 ELSE GOTO 5670
- 5580 GOTOXY 0,16
- 5590 ANSWER$ = ""
- 5600 PRINT STRING$(72," ");
- 5610 GOTOXY 0,16
- 5620 LINE INPUT "ALREADY PRINTED A CHECK FOR THIS - WANT A RE-PRINT Y/N (X TO END) ? ";ANSWER$
- 5630 GOTOXY 0,16
- 5640 PRINT STRING$(72," ");
- 5650 IF LEFT$(ANSWER$,1) = "X" THEN GOTO ENTER.CHOICE
- 5660 IF LEFT$(ANSWER$,1) <> "Y" THEN GOTO 6890
- 5670 CHECK.AMOUNT$ = STR$(AMOUNT)
- 5680 HUNDRED$ = "":TENS$ = "":ONES$ = "":CENTS$ = "":TEENS = 0:ABC = 0
- 5690 ABC = INSTR(CHECK.AMOUNT$,".")
- 5700 IF ABC > 1 THEN 6370
- 5710 IF LEN(CHECK.AMOUNT$) <> 2 THEN GOTO 5750
- 5720 ONES$ = MID$(CHECK.AMOUNT$,2,1)
- 5730 GOSUB DOLLARS.TO.WORDS
- 5740 GOTO 6650
- 5750 IF LEN(CHECK.AMOUNT$) <> 3 THEN GOTO 5810
- 5760 TENS$ = MID$(CHECK.AMOUNT$,2,1)
- 5770 ONES$ = MID$(CHECK.AMOUNT$,3,1)
- 5780 IF AMOUNT < 20 THEN TENS$ = MID$(CHECK.AMOUNT$,2,2):ABC$ = "YES" ELSE ABC$ = "NO"
- 5790 GOSUB DOLLARS.TO.WORDS
- 5800 GOTO 6650
- 5810 IF LEN(CHECK.AMOUNT$) <> 4 THEN STOP
- 5820 HUNDREDS$ = MID$(CHECK.AMOUNT$,2,1)
- 5830 TEENS = VAL(MID$(CHECK.AMOUNT$,3,2))
- 5840 IF TEENS < 20 THEN TENS$ = MID$(CHECK.AMOUNT$,3,2):ABC$ = "YES" ELSE ABC$ = "NO"
- 5850 IF ABC$ = "YES" GOTO 5950
- 5860 TENS$ = MID$(CHECK.AMOUNT$,3,1)
- 5870 ONES$ = MID$(CHECK.AMOUNT$,4,1)
- 5880 GOSUB DOLLARS.TO.WORDS
- 5890 GOTO 6650
- 5900 '
- 5910 '
- 5920 DOLLARS.TO.WORDS:
- 5930 '
- 5940 '
- 5950 IF HUNDREDS$ = "1" THEN HUNDREDS$ = "ONE HUNDRED "
- 5960 IF HUNDREDS$ = "2" THEN HUNDREDS$ = "TWO HUNDRED "
- 5970 IF HUNDREDS$ = "3" THEN HUNDREDS$ = "THREE HUNDRED "
- 5980 IF HUNDREDS$ = "4" THEN HUNDREDS$ = "FOUR HUNDRED "
- 5990 IF HUNDREDS$ = "5" THEN HUNDREDS$ = "FIVE HUNDRED "
- 6000 IF HUNDREDS$ = "6" THEN HUNDREDS$ = "SIX HUNDRED "
- 6010 IF HUNDREDS$ = "7" THEN HUNDREDS$ = "SEVEN HUNDRED "
- 6020 IF HUNDREDS$ = "8" THEN NUNDREDS$ = "EIGHT HUNDRED "
- 6030 IF HUNDREDS$ = "9" THEN HUNDREDS$ = "NINE HUNDRED "
- 6040 IF TENS$ = "0" THEN TENS$ = " "
- 6050 IF TENS$ = "1" THEN TENS$ = "TEN "
- 6060 IF TENS$ = "2" THEN TENS$ = "TWENTY "
- 6070 IF TENS$ = "3" THEN TENS$ = "THIRTY "
- 6080 IF TENS$ = "4" THEN TENS$ = "FOURTY "
- 6090 IF TENS$ = "5" THEN TENS$ = "FIFTY "
- 6100 IF TENS$ = "6" THEN TENS$ = "SIXTY "
- 6110 IF TENS$ = "7" THEN TENS$ = "SEVENTY "
- 6120 IF TENS$ = "8" THEN TENS$ = "EIGHTY "
- 6130 IF TENS$ = "9" THEN TENS$ = "NINETY "
- 6140 IF TENS$ = "10" THEN TENS$ = "TEN "
- 6150 IF TENS$ = "11" THEN TENS$ = "ELEVEN "
- 6160 IF TENS$ = "12" THEN TENS$ = "TWELVE "
- 6170 IF TENS$ = "13" THEN TENS$ = "THIRTEEN "
- 6180 IF TENS$ = "14" THEN TENS$ = "FOURTEEN "
- 6190 IF TENS$ = "15" THEN TENS$ = "FIFTEEN "
- 6200 IF TENS$ = "16" THEN TENS$ = "SIXTEEN "
- 6210 IF TENS$ = "17" THEN TENS$ = "SEVENTEEN "
- 6220 IF TENS$ = "18" THEN TENS$ = "EIGHTEEN "
- 6230 IF TENS$ = "19" THEN TENS$ = "NINETEEN "
- 6240 IF ABC$ = "YES" THEN GOTO 6650
- 6250 IF ABC$ = "RETURN" THEN RETURN
- 6260 IF ONES$ = "0" THEN ONES$ = " "
- 6270 IF ONES$ = "1" THEN ONES$ = "ONE "
- 6280 IF ONES$ = "2" THEN ONES$ = "TWO "
- 6290 IF ONES$ = "3" THEN ONES$ = "THREE "
- 6300 IF ONES$ = "4" THEN ONES$ = "FOUR "
- 6310 IF ONES$ = "5" THEN ONES$ = "FIVE "
- 6320 IF ONES$ = "6" THEN ONES$ = "SIX "
- 6330 IF ONES$ = "7" THEN ONES$ = "SEVEN "
- 6340 IF ONES$ = "8" THEN ONES$ = "EIGHT "
- 6350 IF ONES$ = "9" THEN ONES$ = "NINE "
- 6360 RETURN
- 6370 IF ABC = 3 THEN ONES$ = MID$(CHECK.AMOUNT$,2,1)
- 6380 IF ABC = 4 THEN TENS$ = MID$(CHECK.AMOUNT$,2,1):ONES$ = MID$(CHECK.AMOUNT$,3,1)
- 6390 TEENS = VAL(MID$(CHECK.AMOUNT$,2,2))
- 6400 IF ABC = 4 AND TEENS < 20 THEN TENS$ = MID$(CHECK.AMOUNT$,2,2):ABC$ = "RETURN" ELSE ABC$ = "NO"
- 6410 IF ABC = 5 THEN HUNDREDS$ = MID$(CHECK.AMOUNT$,2,1):TENS$ = MID$(CHECK.AMOUNT$,3,1):ONES$ = MID$(CHECK.AMOUNT$,4,1)
- 6420 IF ABC = 5 AND TEENS < 20 THEN TENS$ = MID$(CHECK.AMOUNT$,3,2):ABC$ = "RETU
- 6430 IF ABC = 3 THEN CENTS$ = MID$(CHECK.AMOUNT$,4,2)
- 6440 IF ABC = 3 THEN CHECK$ = MID$(CHECK.AMOUNT$,6,1)
- 6450 IF ABC = 3 AND LEN(CHECK$) = 0 THEN GOTO 6640
- 6460 IF ABC = 3 THEN CENTS = VAL(MID$(CHECK.AMOUNT$,6,1))
- 6470 IF ABC = 3 AND CENTS > 5 THEN CENTS = VAL(MID$(CHECK.AMOUNT$,5,1)) + 1
- 6480 IF ABC = 3 AND CENTS > 0 THEN CENT$ = STR$(CENTS)
- 6490 IF ABC = 3 AND CENTS > 0 THEN CENTS$ = MID$(CHECK.AMOUNT$,4,1) + CENT$
- 6500 IF ABC = 4 THEN CENTS$ = MID$(CHECK.AMOUNT$,5,2)
- 6510 IF ABC = 4 THEN CHECK$ = MID$(CHECK.AMOUNT$,7,1)
- 6520 IF ABC = 4 AND LEN(CHECK$) = 0 THEN GOTO 6640
- 6530 IF ABC = 4 THEN CENTS = VAL(MID$(CHECK.AMOUNT$,7,1))
- 6540 IF ABC = 4 AND CENTS > 5 THEN CENTS = VAL(MID$(CHECK.AMOUNT$,6,1)) + 1
- 6550 IF ABC = 4 AND CENTS > 0 THEN CENT$ = STR$(CENTS)
- 6560 IF ABC = 4 AND CENTS > 0 THEN CENTS$ = MID$(CHECK.AMOUNT$,5,1) + CENT$
- 6570 IF ABC = 5 THEN CENTS$ = MID$(CHECK.AMOUNT$,6,2)
- 6580 IF ABC = 5 THEN CHECK$ = MID$(CHECK.AMOUNT$,8,1)
- 6590 IF ABC = 5 AND LEN(CHECK$) = 0 THEN GOTO 6640
- 6600 IF ABC = 5 THEN CENTS = VAL(MID$(CHECK.AMOUNT$,8,1))
- 6610 IF ABC = 5 AND CENTS > 5 THEN CENTS = VAL(MID$(CHECK.AMOUNT$,7,1)) + 1
- 6620 IF ABC = 5 AND CENTS > 0 THEN CENT$ = STR$(CENTS)
- 6630 IF ABC = 5 AND CENTS > 0 THEN CENTS$ = MID$(CHECK.AMOUNT$,6,1) + CENT$
- 6640 GOSUB DOLLARS.TO.WORDS
- 6650 LPRINT:LPRINT:LPRINT
- 6660 LPRINT USING " ####";NUMBER
- 6670 LPRINT
- 6680 LPRINT TAB(8) HUNDREDS$;TENS$;ONES$;:LPRINT "DOLLARS";
- 6690 IF LEN(CENTS$) = 0 THEN CENTS$ = "NO"
- 6700 LPRINT " AND ";:LPRINT CENTS$;:LPRINT " CENTS"
- 6710 LPRINT
- 6720 LPRINT TAB(8) TO$;" ";DATE$;:LPRINT USING " **####.##";AMOUNT;
- 6730 LPRINT "**"
- 6740 LPRINT:LPRINT:LPRINT
- 6750 LPRINT TAB(8) "MEMO: ";FOR$
- 6760 FOR XX = 1 TO 7:LPRINT:NEXT XX
- 6770 LPRINT USING " ####";NUMBER
- 6780 FOR XX = 1 TO 4:LPRINT:NEXT XX
- 6790 LPRINT TAB(5) "DATE: ";DATE$
- 6800 LPRINT TAB(5) "MEMO: ";FOR$
- 6810 LPRINT TAB(5);:LPRINT USING "AMOUNT: $ #,###.##";AMOUNT
- 6820 LPRINT TAB(5) "PAID TO: ";TO$
- 6830 FOR XX = 1 TO 13:LPRINT:NEXT XX
- 6840 HUNDREDS$ = "":TENS$ = "":ONES$ = "":CENTS$ = "":CHECK$ = ""
- 6850 CENT = 0:CENTS = 0:CENTS$ = ""
- 6860 CODE$ = "P"
- 6870 GOSUB LSET.THE.FIELDS
- 6880 PUT 1,TRANSNUMBER
- 6890 NEXT X
- 6900 GOTO ENTER.CHOICE
- 6910 '
- 6920 '
- 6930 ALIGN:
- 6940 '
- 6950 '
- 6960 LPRINT:LPRINT:LPRINT
- 6970 NUMBER = 9999
- 6980 LPRINT USING " ####";NUMBER
- 6990 LPRINT
- 7000 HUNDREDS$ = "NO ":CENTS$ = "NO"
- 7010 LPRINT TAB(8) HUNDREDS$;TENS$;ONES$;:LPRINT "DOLLARS";
- 7020 IF LEN(CENTS$) = 0 THEN CENTS$ = "NO"
- 7030 LPRINT " AND ";:LPRINT CENTS$;:LPRINT " CENTS"
- 7040 LPRINT
- 7050 TO$ = "ALIGNMENT PRINT "
- 7060 DATE$ = "XX/XX/XX":AMOUNT = 999.99
- 7070 LPRINT TAB(8) TO$;" ";DATE$;:LPRINT USING " **####.##";AMOUNT;
- 7080 LPRINT "**"
- 7090 LPRINT:LPRINT:LPRINT
- 7100 FOR$ = "ALIGNMENT PRINT"
- 7110 LPRINT TAB(8) "MEMO: ";FOR$
- 7120 FOR XX = 1 TO 7:LPRINT:NEXT XX
- 7130 LPRINT USING " ####";NUMBER
- 7140 FOR XX = 1 TO 4:LPRINT:NEXT XX
- 7150 LPRINT TAB(5) "DATE: ";DATE$
- 7160 LPRINT TAB(5) "MEMO: ";FOR$
- 7170 LPRINT TAB(5);:LPRINT USING "AMOUNT: $ #,###.##";AMOUNT
- 7180 LPRINT TAB(5) "PAID TO: ";TO$
- 7190 FOR XX = 1 TO 13:LPRINT:NEXT XX
- 7200 HUNDREDS$ = "":TENS$ = "":ONES$ = "":CENTS$ = ""
- 7210 RETURN
- 7220 '
- 7230 '
- 7240 PRNT.REPORT:
- 7250 '
- 7260 '
- 7270 LINE.COUNT = 0:PAGE.NUMBER = 0
- 7280 GOTOXY 0,16
- 7290 LINE INPUT "ARE YOU SURE YOU WANT TO PRINT A REPORT ? ";ANSWER$
- 7300 IF LEFT$(ANSWER$,1) <> "Y" THEN GOTO ENTER.CHOICE
- 7310 GOTOXY 0,16
- 7320 LINE INPUT "1. = DEPOSITS 2. = CHECKS 3. = BOTH ? ";ANSWER$
- 7330 Z = VAL(ANSWER$)
- 7340 IF Z = 0 OR Z > 3 THEN GOTO ENTER.CHOICE
- 7350 GOSUB READ.SYSTEM.RECORD
- 7360 GOSUB BUILD.SCREEN
- 7370 FOR X = 2 TO TRANS.NUMBER
- 7380 GOSUB CLEAR.FIELDS
- 7390 TRANSNUMBER = X
- 7400 GOSUB READ.THE.FILE
- 7410 IF CODE$ = "D" OR CODE$ = "E" THEN GOTO 7450
- 7420 IF Z = 3 THEN GOSUB THE.PRINT
- 7430 IF Z = 1 AND DEPOSIT > 0 THEN GOSUB THE.PRINT
- 7440 IF Z = 2 AND AMOUNT > 0 THEN GOSUB THE.PRINT
- 7450 NEXT X
- 7460 GOTO ENTER.CHOICE
- 7470 '
- 7480 '
- 7490 THE.PRINT:
- 7500 '
- 7510 '
- 7520 IF LINE.COUNT = 0 THEN GOSUB NEW.PAGE
- 7530 IF LINE.COUNT > 59 THEN GOSUB NEW.PAGE
- 7540 GOSUB DISPLAY.TRANS
- 7550 LPRINT
- 7560 LPRINT
- 7570 LPRINT "Transaction date:.............. ";DATE$
- 7580 LPRINT USING "Deposit:......................$ #,###.##";DEPOSIT
- 7590 LPRINT USING "Transaction number:............ ####";NUMBER
- 7600 LPRINT "Check made out to:............. ";TO$
- 7610 LPRINT "For:........................... ";FOR$
- 7620 LPRINT USING "Amount of check:..............$ #,###.##";AMOUNT
- 7630 LPRINT USING "Balance on this transaction:..$ #,###.##";BALANCE
- 7640 LPRINT
- 7650 LPRINT STRING$(70,"-")
- 7660 LINE.COUNT = LINE.COUNT + 11
- 7670 RETURN
- 7680 '
- 7690 '
- 7700 NEW.PAGE:
- 7710 '
- 7720 '
- 7730 IF LINE.COUNT <> 0 THEN FOR ZZ = 1 TO 8:LPRINT:NEXT ZZ
- 7740 IF Z = 1 THEN LPRINT "D E P O S I T S";:LPRINT TAB(50);REPDATE$;
- 7750 IF Z = 2 THEN LPRINT "C H E C K S";:LPRINT TAB(50);REPDATE$;
- 7760 IF Z = 3 THEN LPRINT "A L L T R A N S A C T I O N S";:LPRINT TAB(50);REPDATE$;
- 7770 PAGE.NUMBER = PAGE.NUMBER + 1
- 7780 LPRINT USING " PAGE: ###";PAGE.NUMBER
- 7790 LPRINT STRING$(70,"-")
- 7800 LPRINT
- 7810 LINE.COUNT = 5
- 7820 RETURN
- əQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəə